GNUPro Toolkit Documentation|Index|Next

Debugging with GDB
The GNU source-level debugger

    Copyright © 1988-1999  Free Software Foundation, Inc.

    Permission is granted to make and distribute verbatim copies of this documentation
    provided the copyright notice and this permission notice are preserved on all copies.
    Permission is granted to copy and distribute modified versions of this documentation
    under the conditions for verbatim copying, provided also that the “GNU General Public
    License” is included exactly as in the original, and provided that the entire resulting
    derived work is distributed under the terms of a permission notice identical to this one.
    Permission is granted to copy and distribute translations of this documentation into
    another language, under the above conditions for modified versions, except that the
    sections entitled “GNU General Public License”and  “Funding for Free Software”
    and this permission notice, may be included in translations approved by the Free
    Software Foundation instead of in the original English.
    This documentation has been prepared by Cygnus Technical Publications;
    to contact the Cygnus Solutions Technical Publications staff, email: doc@cygnus.com.
    Copyright © 1991-1999  Cygnus®.
    All rights reserved.
    GNUPro®, the GNUPro logo, and  the Cygnus logo are all trademarks of Cygnus.
    All other brand and product names, trademarks and copyrights are the property of their
    respective owners.
    Permission is granted to make and distribute verbatim copies of this documentation,
    provided the copyright notice and this permission notice are preserved on all copies.
    Permission is granted to copy and distribute modified versions of this documentation
    under the conditions for verbatim copying, provided also that the entire resulting
    derived work is distributed under the terms of a permission notice identical to this one.
    Permission is granted to copy and distribute translations of this documentation into
    another language, under the above conditions for modified versions.
    This documentation has been prepared by Cygnus Technical Publications; contact
    the Cygnus Technical Publications staff: doc@cygnus.com.
    While every precaution has been taken in the preparation of this documentation, the
    publisher assumes no responsibility for errors or omissions, or for damages resulting
    from the use of the information within the documentation.
    Send bugs and comments on GDB to: bug-gdb@prep.ai.mit.edu.

The following documentation details the GNU source level debugger, GDB.

- Summary of the GNU debugger, GDB

- GDB as free software
- Contributors to GDB

- Installing GDB

- Compiling GDB in another directory
- Specifying names for hosts and targets
- configure options

- Controlling GDB

- Prompt
- Command editing
- Command history
- Screen size
- Numbers
- Optional warnings and messages

- Getting in and out of GDB

- Invoking GDB

- Choosing files
- Choosing modes

- Quitting GDB
- Shell commands

- GDB commands

- Command syntax
- Command completion
- Getting help

- Running programs under GDB

- Compiling for debugging
- Starting your program
- Your program’s arguments
- Your program’s environment
- Your program’s working directory
- Your program’s input and output
- Debugging an already-running process
- Killing the child process
- Additional process information
- Debugging programs with multiple threads
- Debugging programs with multiple processes

- Stopping and continuing

- Breakpoints, watchpoints, and exceptions

- Setting breakpoints
- Setting watchpoints
- Breakpoints and exceptions
- Deleting breakpoints
- Disabling breakpoints
- Break conditions
- Breakpoint command lists
- Breakpoint menus

- Continuing and stepping
- Signals
- Stopping and starting multi-thread programs

- Examining the stack

- Stack frames
- Backtraces
- Selecting a frame
- Information about a frame
- MIPS machines and the function stack

- Examining source files

- Printing source lines
- Searching source files
- Specifying source directories
- Source and machine code

- Examining data

- Expressions
- Program variables
- Artificial arrays
- Output formats
- Examining memory
- Automatic display
- Print settings
- Value history
- Convenience variables
- Registers
- Floating point hardware

- Using GDB with different languages

- Switching between source languages

- List of filename extensions and languages
- Setting the working language
- Having GDB infer the source language

- Displaying the language
- Type and range checking

- An overview of type checking
- An overview of range checking

- Supported languages

- C and C++
- Modula-2

- Examining the symbol table
- Altering execution

- Assignment to variables
- Continuing at a different address
- Giving your program a signal
- Returning from a function
- Calling program functions
- Patching programs

- GDB files

- Commands to specify files
- Errors reading symbol files

- Specifying a debugging target

- Active targets
- Commands for managing targets
- Choosing target byte order
- Remote debugging

- The GDB remote serial protocol
- The UDI protocol for AMD29K
- The EBMON protocol for AMD29K
- GDB with a Tandem ST2000
- GDB and VxWorks
- GDB and SPARClet
- GDB and Hitachi microprocessors
- GDB and remote MIPS boards
- Simulated CPU target

- Canned sequences of commands

- User-defined commands
- User-defined command hooks
- Command files
- Commands for controlled output

- Using GDB under GNU Emacs
- Reporting bugs in GDB

- Have you found a bug?
- How to report bugs

- Command line editing

- Introduction to line editing
- Readline interaction

- Readline bare essentials
- Readline movement commands
- Readline killing commands
- Readline arguments

- Readline init file

- Readline init syntax
- Letting Readline type for you
- Readline `vi` mode

- Using history interactively

- History interaction

- Event designators
- Word designators
- Modifiers

- Formatting documentation
- Index

Top|Next